1. Field of the Invention
The present invention relates to a computer program product, system, and method having storage pools managed in a storage management system.
2. Description of the Related Art
In a storage environment, a storage controller also often referred to as a server, frequently has a pair of processor nodes to process input/output (I/O) instructions from one or more hosts to write data to or read data from data storage units controlled by the storage controller. The storage units are typically grouped in arrays of storage units such as an array of disk drives, for example. One or more arrays of storage units may in turn be grouped in a storage pool managed by the storage controller. Several such storage pools may be managed by a storage controller.
To promote balancing the loads on the processor nodes of the storage controller, storage management systems have frequently required the user when adding a storage pool to the system, to assign one of the processor nodes of the pair of processor nodes of the storage controller, to control the I/O operations between the host and the storage units of the storage pool being added. Moreover, if adding one storage pool, the user may be required to add a second storage pool at the same time and of the same type, and to assign the other processor node of the pair of processor nodes to control the I/O operations between the host and the storage units of the second storage pool being added. Still further, the management system may require the user to specify an equal amount of storage capacity for each of the two storage pools being added, to facilitate load balancing between the processor nodes of the pair of processor nodes of the storage controller.
The data is frequently stored in the storage units in units of data often referred to as a “storage volume.” To create a group of storage volumes, the user typically selects a storage pool from which storage capacity will be allocated to the group of storage volumes being added. Since each storage pool is assigned to a particular processor node, the load balance between the processor nodes may be adversely affected, depending upon which storage pool the user selects for the group of storage volumes being added.
A storage controller and the storage pools, storage arrays and storage volumes controlled by the controller, are typically configured and administered by a user through a storage management system operating on the storage controller. Such management systems usually include a user interface such as a graphical user interface (GUI) which facilitates such configuration and administration. In one type of such management system, the management system maintains in a database, system configuration data identifying the storage pools, storage arrays and storage volumes which have been added to the system. Such system configuration data is frequently stored in data structures in the database.